package com.hyt.it.ogt.kq.service.gov.model.param.admission;

import com.hyt.it.ogt.kq.common.gov.enums.admission.TicketDataSourceEnum;
import com.hyt.it.ogt.kq.common.gov.enums.admission.TicketSubjectSettingEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * <p>
 * 新增准考证任务对象
 * </p>
 *
 * @author zhoumiao
 * @since 2023-01-10
 */
@Data
@Accessors(chain = true)
@ApiModel(value = "新增准考证任务对象")
public class AddOrUpdateAdmissionTicketInfoParam {

    @ApiModelProperty(value = "准考证名称")
    @NotBlank(message = "准考证名称不能为空")
    private String name;

    /**
     * {@link TicketDataSourceEnum}
     */
    @ApiModelProperty(value = "数据来源 1-关联无考场数据 2-关联虚拟考场数据")
    @NotNull(message = "准考证数据来源不能为空")
    private Integer dataSourceCode;

    @ApiModelProperty(value = "模板类型 1-标准模板1 2-标准模板2 3-自定义模板")
    private Integer templateType;

    /**
     * {@link TicketSubjectSettingEnum}
     */
    @ApiModelProperty(value = "科目设置 1-单科目生成 2-多科目生成")
    @NotNull(message = "准考证科目设置不能为空")
    private Integer subjectSetting;

    @ApiModelProperty(value = "考试id")
    @NotBlank(message = "考试id不能为空")
    private String examId;

    @ApiModelProperty(value = "考试名称")
    @NotBlank(message = "考试名称不能为空")
    private String examName;

    @ApiModelProperty(value = "准考证任务id 编辑时需要传递")
    private String admissionTicketInfoId;
}
